local t = Def.ActorFrame {};
if not GAMESTATE:IsCourseMode() then
	local song = GAMESTATE:GetCurrentSong();
	local sname = song:GetDisplayMainTitle();
	local diff = GAMESTATE:GetCurrentSteps(PLAYER_1);
	local diffn = diff:GetChartName();
	local diffr = diff:GetMeter();
end
if GAMESTATE:IsExtraStage2() then
	t[#t+1] = LoadActor("../Fade in")..{};
elseif GAMESTATE:IsExtraStage() then
	t[#t+1] = LoadActor("ex")..{};
elseif diffn == "ULTRA GATE" or diffn == "ULTRA EX" then
	t[#t+1] = LoadActor("gate")..{};
else
	t[#t+1] = Def.Quad {
		InitCommand=function(self) self:Center():FullScreen():diffuse(color("#000000")) end;
		OnCommand=function(self) self:sleep(0.5):linear(0.3):diffusealpha(0) end;
	};
	t[#t+1] = LoadActor("_grid")..{
		InitCommand=function(self) self:Center():zoom(1):diffusealpha(0.4)
			if diffr == 999 then self:diffuse(color("#FF0000")):diffusealpha(0.4)
			else self:diffusealpha(0.4) end
		end;
		OnCommand=function(self) self:decelerate(0.2):diffusealpha(0.7):accelerate(0.2):diffusealpha(0.4):sleep(0.2):linear(0.3):diffusealpha(0) end;
	};
	t[#t+1] = LoadActor("_textloadOK")..{
		InitCommand=function(self) self:Center():zoom(1):diffusealpha(1) end;
		OnCommand=function(self) self:zoom(1.5):linear(0.2):zoom(1):sleep(0.3):linear(0.3):diffusealpha(0) end;
	};
	t[#t+1] = LoadActor("_loadOK")..{
		OnCommand=function(self) self:queuecommand("Play") end;
		PlayCommand=function(self) self:play() end;
	};
end
return t;